$OpenBSD: patch-gcc_c-common_c,v 1.1.1.1 2010/10/10 17:39:06 steven Exp $
--- gcc/c-common.c.orig	Mon Mar 12 19:50:38 2007
+++ gcc/c-common.c	Mon Jun 14 19:23:03 2010
@@ -545,7 +545,9 @@ static tree handle_cleanup_attribute (tree *, tree, tr
 static tree handle_warn_unused_result_attribute (tree *, tree, tree, int,
 						 bool *);
 static tree handle_sentinel_attribute (tree *, tree, tree, int, bool *);
+static tree handle_bounded_attribute (tree *, tree, tree, int, bool *);
 
+
 static void check_function_nonnull (tree, tree);
 static void check_nonnull_arg (void *, tree, unsigned HOST_WIDE_INT);
 static bool nonnull_check_p (tree, unsigned HOST_WIDE_INT);
@@ -624,6 +626,8 @@ const struct attribute_spec c_common_attribute_table[]
 			      handle_deprecated_attribute },
   { "vector_size",	      1, 1, false, true, false,
 			      handle_vector_size_attribute },
+  { "bounded",                3, 4, false, true, false,
+                              handle_bounded_attribute },
   { "visibility",	      1, 1, false, false, false,
 			      handle_visibility_attribute },
   { "tls_model",	      1, 1, true,  false, false,
@@ -5635,6 +5639,15 @@ handle_warn_unused_result_attribute (tree *node, tree 
     }
 
   return NULL_TREE;
+}
+
+static tree
+handle_bounded_attribute (tree *ARG_UNUSED (node), tree ARG_UNUSED (name), 
+			   tree ARG_UNUSED (args),
+			   int ARG_UNUSED (flags), bool *no_add_attrs)
+{
+	*no_add_attrs = true;
+	return NULL_TREE;
 }
 
 /* Handle a "sentinel" attribute.  */
